package test.day07;

public class KthNumberEndOfList {
	public static class ListNode {
		int val;
		ListNode next;
		ListNode() {}
		ListNode(int val) { this.val = val; }
		ListNode(int val, ListNode next) { this.val = val; this.next = next; }
	}
	public ListNode getKthFromEnd(ListNode head, int k) {
		ListNode fast = head;
		while(fast != null) {
			fast = fast.next;
			if(k==0) {
				head = head.next;
			}else {
				k--;
			}
		}
		return head;
	}

	public static void main(String[] args) {
		ListNode listNode1 = new ListNode(1);
		ListNode listNode2 = new ListNode(2);
		ListNode listNode3 = new ListNode(3);
		ListNode listNode4 = new ListNode(4);
		ListNode listNode5 = new ListNode(5);
		listNode1.next = listNode2;
		listNode2.next = listNode3;
		listNode3.next = listNode4;
		listNode4.next = listNode5;
		System.out.println(new KthNumberEndOfList().getKthFromEnd(listNode1, 3).val);
	}
}
